package sicnu.cs.ich.security.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import sicnu.cs.ich.api.domain.entity.UserInfo;
import sicnu.cs.ich.api.domain.form.UserForm;
import sicnu.cs.ich.api.domain.form.WechatUserForm;

import java.util.Optional;


@Mapper
public interface UserInfoMapper extends BaseMapper<UserInfo> {


    /**
     * 更新用户信息
     *
     * @param userInfo 用户信息
     */
    int updateUserInfo(UserInfo userInfo);


    /**
     * 根据用户id查找对应用户
     *
     * @param userId 用户id
     * @return 用户信息实体
     */
    Optional<UserInfo> findOptionalInfo(Integer userId);

    /**
     * 插入用户信息
     */
    int initUserInfo(UserForm user);
    int initWechatUserInfo(WechatUserForm user);
}
